这是一份 skr_university 的学习记录
用以记录和鞭策自己在忙完学校与生活事情之余不要懈怠
由于时间比较久,所以前面是周报,后面是日报
2020.7.26: week 1 学习两部南京大学的计算机系统基础课
- 南京大学计算机系统基础MOOC(一) :操作系统概述、运算与基础
- 南京大学计算系系统基础MOOC(二) :CPU基础知识
2020.8.2: week 2 学习第三部南京大学的计算机系统基础课,写CSAPP前三个lab
-
南京大学计算机系统基础MOOC(三) :进程、中断与其他
-
CSAPP第三版全lab :与深入理解计算机系统相配套的实验
- data_lab 主要是位运算的奇技淫巧
- bomb_lab 简单的逆向题
- attack_lab 简单的pwn题
2020.8.9: week 3 读CSAPP原书,写 Arch 和 Cache 两个lab
- CSAPP第三版全lab :与深入理解计算机系统相配套的实验
2020.8.16: week 4 读CSAPP原书,写 Shell 和 Malloc 两个lab
- CSAPP第三版全lab :与深入理解计算机系统相配套的实验
- shell_lab 做一个完整的 shell 的功能
- malloc_lab 实现动态内存申请器
2020.8.23: week 5 听清华大学操作系统课程,写配套的 ucore lab1+拓展,写思考题
-
ucore_OS :清华大学操作系统课程配套实验
- ucore_lab1 分析和实现bootloader
-
思考题 :十种整数溢出和浮点精度导致的漏洞
2020.8.30: week 6 听清华大学操作系统课程,写配套的 ucore lab2、lab3
- ucore_OS :清华大学操作系统课程配套实验
- ucore_lab2 实现内存分配与页表相关
- ucore_lab3 地址映射与页面替换算法
2020.9.6: week 6 听清华大学操作系统课程,写配套的 ucore lab4
- ucore_OS :清华大学操作系统课程配套实验
- ucore_lab4 进程、线程与切换
2020.9.13: week 7 看 googlectf_echo 相关的 socket 基础,注释源代码
- googlectf2020_echo :uaf 堆题漏洞
2020.9.20: week 8 调试完毕 googlectf_echo ,调试 plaidctf_reee
- plaidctf2020_reee :自解密,花指令,gdb调试记得带参数
2020.9.27: week 9 调试完毕 plaidctf_reee,搭建 iot 调试环境
2020.10.4: week 10 学 mdk 内容,看 debugger 原理,长亭视频
- iot调试环境笔记
- debugger
- 长亭hitcon演讲 如何从0开始攻破 iot 设备
2020.10.11: week 11 复现 sandybox,看操作系统真相还原到第三章,尝试复现vivotek
- plaidctf2020_sandybox :沙箱逃逸
2020.10.12: day 78-80 搭建 raspberrypi 环境
- raspberry启动 :无显示器与键盘启动树莓派
2020.10.15: day 81-84 复现完成 vivotek 远程栈溢出漏洞
- vivotek摄像头漏洞 :远程 httpd 服务栈溢出
2020.10.19: day 85 写 pwnable.tw start
- pwnable.tw_start :栈溢出执行shellcode
2020.10.20: day 86-87 阅读 iot 基础知识与漏洞挖掘相关文章,写 pwnable.tw orw
- IOT安全实战资料收集整合
- pwnable.tw orw :shellcode 用中断读取 flag
2020.10.22: day 88 头疼,上午极度不适,勉强看了看 pwnable.tw 的 calc
2020.10.23: day 89 写完了 pwnable.tw 的 calc
- pwnable.tw_calc :逻辑漏洞实现任意地址读写
2020.10.24: day 90-91 打 byte ctf
2020.10.26: day 92 在写 pwnable.tw 的 3*17 顺便看了看 main 函数的启动流程
2020.10.27: day 93 写完了 pwnable.tw 的 3x17
- pwnable.tw_3x17 :任意地址写构造ROP
2020.10.28: day 94 写完了 pwnable.tw 的 dubblesort
- pwnable.tw_dubblesort :保护全开的栈溢出
2020.10.29: day 95 研究了一下小米摄像头,还没啥头绪
2020.10.30: day 96 满课+补作业
2020.10.31: day 97 尝试写 pwnable.tw 的 hacknote
- pwnable.tw_hacknote
2020.11.1: day 98 打铁人三项
2020.11.2: day 99 写完了 pwnable.tw 的 hacknote
- pwnable.tw_hacknote :用main_arena泄漏libc
2020.11.3: day 100 没要到固件,自己拆摄像头把焊锡拽断了....
2020.11.4: day 101 写完了 pwnable.tw 的 silver_bullet
- pwnable.tw_bullet-strncat :strncat实现栈溢出
2020.11.5: day 102 看 pwnable.tw 的 applestore 与补作业
- pwnable.tw_applestore 弄懂利用思路
2020.11.6: day 103 试图用电烙铁焊锡,然后把自己给烫伤了...
2020.11.7: day 104 开始学习codeql
- CodeQL
2020.11.8: day 105 补作业
2020.11.9: day 106 codeql有点推不动,先继续解决遗留下来的applestore,但是ubuntu炸了。惨惨
- pwnable.tw_applestore 写到泄漏libc与heap基址
2020.11.10: day 107 接着推applestore,装py3的pwntools环境
- pwnable.tw_applestore 写到如何利用delete的地址写
2020.11.11: day 108 写完了applestore,焊小米摄像头的板子
- pwnable.tw_applestore :利用栈平衡控制内存
- 焊板子大失败,决定用砂纸磨磨然后换个思路弄
2020.11.12: day 109 开始读《程序员的自我修养》并写读书笔记
- 《程序员的自我修养》1.1 从Hello World开始
2020.11.13: day 110 完成了《程序员的自我修养》第一章读书笔记
- 《程序员的自我修养》第一章 温故而知新 :操作系统做什么、内存如何分配与线程基础
2020.11.14: day 111 复现完成华为HG532命令注入漏洞
- CVE-2017-17215-华为HG632 :upnp服务中未对语句进行过滤就拼接用system执行,从而可以通过命令注入完成任意命令执行
2020.11.15: day 112 体测,晚上看了会《程序员的自我修养》
- 《程序员的自我修养》笔记写到了2.1
2020.11.16: day 113 写完了《程序员的自我修养》第二章,开始看pwnable.tw的realloc
- 《程序员的自我修养》第二章 编译和链接 :预编译、汇编、编译与链接
- pwnable.tw realloc
2020.11.17: day 114 分析完了realloc,弄glibc环境
- pwnable.tw realloc
2020.11.18: day 115 《程序员的自我修养》,写题目
- 《程序员的自我修养》笔记写到了3.2
- 写笔试题,自己好菜啊...
2020.11.19: day 116 面试被问了,赶了篇shellcode的博客
- 如何编写一个shellcode :32与64位的shellcode编写
2020.11.20: day 117 写完了pwnable.tw 的 re-alloc
- pwnable.tw re-alloc :利用realloc实现uaf更改got表
2020.11.21: day 118 补了篇反弹shell的博客
- 如何构建一个反弹shell :构建反弹shell
2020.11.22: day 119 补作业
2020.11.23: day 120 《程序员的自我修养》,写tcachetear,蓝牙键盘突然坏掉了...
- 《程序员的自我修养》笔记写到了3.3
- 搞定蓝牙键盘
- 写pwnable.tw Tcache Tear
2020.11.24: day 121 接着写tcachetear,看glibc2.26新添加的tcache原理
- 写pwnable.tw Tcache Tear
2020.11.25: day 122 继续看《程序员的自我修养》,面试
- 《程序员的自我修养》笔记写到了3.4
- 面试
2020.11.26: day 123 写完了tcachetear
- pwnable.tw Tcache Tear :tcache-dup完成任意地址任意写,house-of-spirit泄漏libc基址,改写__free_hook从而劫持控制流
2020.11.27: day 124 开始写seethefile,学IO_FILE相关
- pwnable.tw seethefile
2020.11.28: day 125 写完了seethefile和death_note
- pwnable.tw seethefile :栈溢出构造fake-FILE
- pwnable.tw death_note :构造可见字符shellcode
2020.11.29: day 126 看了会starbound,《程序员的自我修养》
- pwnable.tw starbound
- 《程序员的自我修养》笔记3.4写完
2020.11.30: day 127 写spirited_away,好像是因为虚拟机没翻墙,远程打不通
- pwnable.tw spirited_away
2020.12.1: day 128 赶实验
2020.12.2: day 129 写完spirited_away,经过测试,远程不通应该是题目本身的问题
- pwnable.tw spirited_away:spirited_away-read与sprintf栈溢出
2020.12.3: day 130 整理了一下自己的linux-pwn技能树,要开始各种复习及大作业了,故暂时只在某任务完成后更新日报
2020.12.4: day 131 写完了pwnable.tw 的babystack
- pwnable.tw babystack:strcpy形成栈溢出
2020.12.7: day 134 写完了pwnable.tw 的secret-garden
- pwnable.tw secret-garden:fastbin任意地址分配修改hook
2020.12.14: day 141 更新了一篇关于技术和工具原理的博客
2020.12.19: day 146 写完了《程序员的自我修养》第三章笔记
- 《程序员的自我修养 第三章》:目标文件里有什么
2021.1.11: day 169 终于搞完回家了,看了h4lo的物联网渗透实战公开课,过了一下mips指令集。不过今天状态不行(
2021.1.12: day 170 过了一遍arm汇编
2021.1.13: day 171 看了讲pwn的课,主要是house of husk、IO FILE和SROP
2021.1.14: day 172 写完了pwnable.tw的alive_note
2021.1.15: day 173 处理杂事,看了看程序员的自我修养
2021.1.17: day 175 配置博客的搜索功能
2021.1.19: day 177 出题
2021.2.1: day 190 前段日子主要解决题目的各种问题,最近几天在搭西数的nas,可惜失败了,于是把过程更了一篇博客
后记: 后来的寒假时间尝试搭建挖掘过群晖NAS漏洞,可惜没有什么收获,想要深入挖掘可能需要从底层一步一步了解整个的架构与执行流程,加上需要开始准备考研了,所以这里的学习记录大概也就告一段落了,下次再见 :) 2021.3.29